*!* Program      : WinEvents.H
*!* Author       : Jijo Pappachan, jijopappachan@gmail.com
*!* Date         : 07/23/11 01:02:09 PM
*!* Copyright    : 
*!* Description  : Windows messages contants
*!* Revision Info: 1.0
*!* ================================================================================

*-- Windows messages
#Define WM_NULL				0x0000
#Define WM_CREATE				0x0001
#Define WM_DESTROY			0x0002
#Define WM_MOVE				0x0003
#Define WM_SIZE				0x0005
#Define WM_ACTIVATE			0x0006
#Define WM_SETFOCUS			0x0007
#Define WM_KILLFOCUS			0x0008
#Define WM_ENABLE				0x000A
#Define WM_SETREDRAW			0x000B
#Define WM_SETTEXT			0x000C
#Define WM_GETTEXT			0x000D
#Define WM_GETTEXTLENGTH		0x000E
#Define WM_PAINT				0x000F
#Define WM_CLOSE				0x0010
#Define WM_QUERYENDSESSION		0x0011
#Define WM_QUIT				0x0012
#Define WM_QUERYOPEN			0x0013
#Define WM_ERASEBKGND			0x0014
#Define WM_SYSCOLORCHANGE		0x0015
#Define WM_ENDSESSION			0x0016
#Define WM_SHOWWINDOW			0x0018
#Define WM_WININICHANGE			0x001A
#Define WM_DEVMODECHANGE		0x001B
#Define WM_ACTIVATEAPP			0x001C
#Define WM_FONTCHANGE			0x001D
#Define WM_TIMECHANGE			0x001E
#Define WM_CANCELMODE			0x001F
#Define WM_SETCURSOR			0x0020
#Define WM_MOUSEACTIVATE		0x0021
#Define WM_CHILDACTIVATE		0x0022
#Define WM_QUEUESYNC			0x0023
#Define WM_GETMINMAXINFO		0x0024
#Define WM_PAINTICON			0x0026
#Define WM_ICONERASEBKGND		0x0027
#Define WM_NEXTDLGCTL			0x0028
#Define WM_SPOOLERSTATUS		0x002A
#Define WM_DRAWITEM			0x002B
#Define WM_MEASUREITEM			0x002C
#Define WM_DELETEITEM			0x002D
#Define WM_VKEYTOITEM			0x002E
#Define WM_CHARTOITEM			0x002F
#Define WM_SETFONT			0x0030
#Define WM_GETFONT			0x0031
#Define WM_SETHOTKEY			0x0032
#Define WM_GETHOTKEY			0x0033
#Define WM_QUERYDRAGICON		0x0037
#Define WM_COMPAREITEM			0x0039
#Define WM_COMPACTING			0x0041
#Define WM_WINDOWPOSCHANGING		0x0046
#define WM_USER 					0x0400 
*!*	#Define WM_WINDOWPOSCHANGED		0x0047
#Define WM_POWER				0x0048
#Define WM_COPYDATA			0x004A
#Define WM_CANCELJOURNAL		0x004B
#Define WM_NCCREATE			0x0081
#Define WM_NCDESTROY			0x0082
#Define WM_NCCALCSIZE			0x0083
#Define WM_NCHITTEST			0x0084
#Define WM_NCPAINT			0x0085
#Define WM_NCACTIVATE			0x0086
#Define WM_GETDLGCODE			0x0087
#Define WM_NCMOUSEMOVE			0x00A0
#Define WM_NCLBUTTONDOWN		0x00A1
#Define WM_NCLBUTTONUP			0x00A2
#Define WM_NCLBUTTONDBLCLK		0x00A3
#Define WM_NCRBUTTONDOWN		0x00A4
#Define WM_NCRBUTTONUP			0x00A5
#Define WM_NCRBUTTONDBLCLK		0x00A6
#Define WM_NCMBUTTONDOWN		0x00A7
#Define WM_NCMBUTTONUP			0x00A8
#Define WM_NCMBUTTONDBLCLK		0x00A9
#Define WM_KEYFIRST			0x0100
#Define WM_KEYDOWN			0x0100
#Define WM_KEYUP				0x0101
#Define WM_CHAR				0x0102
#Define WM_DEADCHAR			0x0103
#Define WM_SYSKEYDOWN			0x0104
#Define WM_SYSKEYUP			0x0105
#Define WM_SYSCHAR			0x0106
#Define WM_SYSDEADCHAR			0x0107
#Define WM_KEYLAST			0x0108
#Define WM_INITDIALOG			0x0110
#Define WM_COMMAND			0x0111
#Define WM_SYSCOMMAND			0x0112
#Define WM_TIMER				0x0113
#Define WM_HSCROLL			0x0114
#Define WM_VSCROLL			0x0115
#Define WM_INITMENU			0x0116
#Define WM_INITMENUPOPUP		0x0117
#Define WM_MENUSELECT			0x011F
#Define WM_MENUCHAR			0x0120
#Define WM_ENTERIDLE			0x0121
#Define WM_CTLCOLORMSGBOX		0x0132
#Define WM_CTLCOLOREDIT			0x0133
#Define WM_CTLCOLORLISTBOX		0x0134
#Define WM_CTLCOLORBTN			0x0135
#Define WM_CTLCOLORDLG			0x0136
#Define WM_CTLCOLORSCROLLBAR		0x0137
#Define WM_CTLCOLORSTATIC		0x0138
#Define WM_MOUSEFIRST			0x0200
#Define WM_MOUSEMOVE			0x0200
#Define WM_LBUTTONDOWN			0x0201
#Define WM_LBUTTONUP			0x0202
#Define WM_LBUTTONDBLCLK		0x0203
#Define WM_RBUTTONDOWN			0x0204
#Define WM_RBUTTONUP			0x0205
#Define WM_RBUTTONDBLCLK		0x0206
#Define WM_MBUTTONDOWN			0x0207
#Define WM_MBUTTONUP			0x0208
#Define WM_MBUTTONDBLCLK		0x0209
#Define WM_MOUSELAST			0x0209
#Define WM_PARENTNOTIFY			0x0210
#Define WM_ENTERMENULOOP		0x0211
#Define WM_EXITMENULOOP			0x0212
#Define WM_POWERBROADCAST		0x0218
#Define WM_DEVICECHANGE			0x0219
#Define WM_MDICREATE			0x0220
#Define WM_MDIDESTROY			0x0221
#Define WM_MDIACTIVATE			0x0222
#Define WM_MDIRESTORE			0x0223
#Define WM_MDINEXT			0x0224
#Define WM_MDIMAXIMIZE			0x0225
#Define WM_MDITILE			0x0226
#Define WM_MDICASCADE			0x0227
#Define WM_MDIICONARRANGE		0x0228
#Define WM_MDIGETACTIVE			0x0229
#Define WM_MDISETMENU			0x0230
#Define WM_DROPFILES			0x0233
#Define WM_MDIREFRESHMENU		0x0234
#Define WM_CUT				0x0300
#Define WM_COPY				0x0301
#Define WM_PASTE				0x0302
#Define WM_CLEAR				0x0303
#Define WM_UNDO				0x0304
#Define WM_RENDERFORMAT			0x0305
#Define WM_RENDERALLFORMATS		0x0306
#Define WM_DESTROYCLIPBOARD		0x0307
#Define WM_DRAWCLIPBOARD		0x0308
#Define WM_PAINTCLIPBOARD		0x0309
#Define WM_VSCROLLCLIPBOARD		0x030A
#Define WM_SIZECLIPBOARD		0x030B
#Define WM_ASKCBFORMATNAME		0x030C
#Define WM_CHANGECBCHAIN		0x030D
#Define WM_HSCROLLCLIPBOARD		0x030E
#Define WM_QUERYNEWPALETTE		0x030F
#Define WM_PALETTEISCHANGING		0x0310
#Define WM_PALETTECHANGED		0x0311
#Define WM_HOTKEY				0x0312
#Define WM_THEMECHANGED			0x031A
#Define WM_PENWINFIRST			0x0380
#Define WM_PENWINLAST			0x038F
#define WM_NOTIFY 				0x004E
#define WM_MOVING 				0x0216 
#define WM_CONTEXTMENU 			0x007B
#define WM_CAPTURECHANGED 		0x0215
#define WM_CHILDACTIVATE        0x0022

*-- Window Commands
#define SC_CLOSE       0xF060
#define SC_MAXIMIZE    0xF030 
#define SC_MINIMIZE    0xF020 

*-- WM_ACTIVATE state values
*!*	#Define WA_INACTIVE			0
*!*	#Define WA_ACTIVE				1
#Define WA_CLICKACTIVE			2

*-- Shell notification fSources
#Define SHCNRF_INTERRUPTLEVEL		0x0001
#Define SHCNRF_SHELLLEVEL		0x0002
#Define SHCNRF_RECURSIVEINTERRUPT	0x1000
#Define SHCNRF_NEWDELIVERY		0x8000

*-- Device and Media Events
#Define WM_USER_SHNOTIFY          WM_USER+10
#Define SHCNE_RENAMEITEM          0x00000001
#Define SHCNE_CREATE              0x00000002
#Define SHCNE_DELETE              0x00000004
#Define SHCNE_MKDIR               0x00000008
#Define SHCNE_RMDIR               0x00000010
#Define SHCNE_MEDIAINSERTED       0x00000020
#Define SHCNE_MEDIAREMOVED        0x00000040
#Define SHCNE_DRIVEREMOVED        0x00000080
#Define SHCNE_DRIVEADD            0x00000100
#Define SHCNE_NETSHARE            0x00000200
#Define SHCNE_NETUNSHARE          0x00000400
#Define SHCNE_ATTRIBUTES          0x00000800
#Define SHCNE_UPDATEDIR           0x00001000
#Define SHCNE_UPDATEITEM          0x00002000
#Define SHCNE_SERVERDISCONNECT    0x00004000
#Define SHCNE_UPDATEIMAGE         0x00008000
#Define SHCNE_DRIVEADDGUI         0x00010000
#Define SHCNE_RENAMEFOLDER        0x00020000
#Define SHCNE_FREESPACE           0x00040000
#Define SHCNE_ASSOCCHANGED	    0x08000000

#Define SHCNE_DISKEVENTS          0x0002381F
#Define SHCNE_GLOBALEVENTS        0x0C0581E0
#Define SHCNE_ALLEVENTS           0x7FFFFFFF
#Define SHCNE_INTERRUPT           0x80000000

#Define WM_DEVICECHANGE         	    0x0219
#Define DBT_DEVNODES_CHANGED            0x0007
#Define DBT_DEVICEARRIVAL               0x8000  &&// system detected a new device
#Define DBT_DEVICEQUERYREMOVE           0x8001  &&// wants to remove, may fail
#Define DBT_DEVICEQUERYREMOVEFAILED     0x8002  &&// removal aborted
#Define DBT_DEVICEREMOVEPENDING         0x8003  &&// about to remove, still avail.
#Define DBT_DEVICEREMOVECOMPLETE        0x8004  &&// device is gone
#Define DBT_DEVTYP_OEM                  0x00000000  &&// oem-defined device type
#Define DBT_DEVTYP_DEVNODE              0x00000001  &&// devnode number
#Define DBT_DEVTYP_VOLUME               0x00000002  &&// logical volume
#Define DBT_DEVTYP_PORT                 0x00000003  &&// serial, parallel
#Define DBT_DEVTYP_NET                  0x00000004  &&// network resource

*-- Power Events
#Define PBT_APMQUERYSUSPEND             0x0000
#Define PBT_APMQUERYSTANDBY             0x0001
#Define PBT_APMQUERYSUSPENDFAILED       0x0002
#Define PBT_APMQUERYSTANDBYFAILED       0x0003
#Define PBT_APMSUSPEND                  0x0004
#Define PBT_APMSTANDBY                  0x0005
#Define PBT_APMRESUMECRITICAL           0x0006
#Define PBT_APMRESUMESUSPEND            0x0007
#Define PBT_APMRESUMESTANDBY            0x0008
#Define PBTF_APMRESUMEFROMFAILURE       0x00000001
#Define PBT_APMBATTERYLOW               0x0009
#Define PBT_APMPOWERSTATUSCHANGE        0x000A
#Define PBT_APMOEMEVENT                 0x000B
#Define PBT_APMRESUMEAUTOMATIC          0x0012

*-- Rich Edit Messages
#define EM_SETBKGNDCOLOR 				WM_USER + 67
#define EM_SETEVENTMASK 				WM_USER + 69 
#define EM_GETTEXTRANGE  				WM_USER + 75
#define EM_AUTOURLDETECT 				WM_USER + 91
#define EM_GETAUTOURLDETECT             WM_USER + 92
#define EM_SETTEXTEX					WM_USER + 97
#define EM_SETSEL						0x00B1
#define EN_LINK          				0x70B
#define ENM_LINK         				0x4000000


